\documentclass{ctexart}
\usepackage{listings}%插入代码
\usepackage{geometry}%设置页面大小边距等
\usepackage{authblk}%作者机构等信息
\usepackage{graphicx}%插入图片
\usepackage{subfigure}%并排子图 共享标题 有子标题
\usepackage{float}
\usepackage{url}%Bib中引用网页
\usepackage{amssymb}%为了用\mathbb
\usepackage{amsmath}%数学方程的显示
%\usepackage{amsthm}%数学定理
\usepackage{listings}%插入代码
\usepackage{fancyhdr}%设置页眉页脚
\usepackage{lastpage}%总页数
\usepackage{hyperref}%引用网页
\usepackage{xcolor}
\usepackage{tikz}



\geometry{a4paper,left=2cm,right=2cm,top=2cm,bottom=2cm}%一定要放在前面！
\pagestyle{fancy}%设置页眉页脚
\lhead{周游\ 3200106105}%页眉左
\chead{Numerical Analysis homwork01}%页眉中
\rhead{2022/09/21}%章节信息
\cfoot{\thepage/\pageref{LastPage}}%当前页，记得调用前文提到的宏包
\rfoot{浙江大学数学科学学院}
\renewcommand{\headrulewidth}{0.1mm}%页眉线宽，设为0可以去页眉线
\renewcommand{\footrulewidth}{0.1mm}%页脚线宽，设为0可以去页眉线
\setlength{\headwidth}{\textwidth}

\hypersetup{%设置网页链接颜色等
    colorlinks=true,%链接将会有颜色，默认是红色
    linkcolor=blue,%内部链接，那些由交叉引用生成的链接将会变为蓝色（blue）
    filecolor=magenta,%链接到本地文件的链接将会变为洋红色（magenta）
    urlcolor=blue,%链接到网站的链接将会变为蓝绿色（cyan）
    }

\newtheorem{theorem}{Theorem}
\newtheorem{proof}{Proof:}
\newtheorem{solution}{Solution:}

\begin{document}
%\newpage
\section*{2.9.2 Programming assignments}
组织架构：
Polynomial.h是一个多项式类，能存储一个多项式，并能实现多项式的加法、乘法、输出等功能。                           
NewtonInterpolation.h是Newton和Hermit插值法的库文件,事实上Hermit可以实现Newton法的所有功能。
X.cpp表示第X题答案的源码,可执行文件X能输出第X题答案。（X = B,C,D,E） \par
代码运行方式：
输入make命令编译出可执行文件，X表示第X题答案，
输入bash run执行之，终端输出答案,并在保存程序输出的图片。\par
绘图方法：
使用matplotlibcpp.h工具画图，图片自动生成在src文件夹中。

\subsection*{B}
\begin{solution}    
The Newton interpolation polynomials are below:\\
\begin{equation*}
    \begin{aligned}
        n = 2 &: p_2(x) = -0.038462x^2 + 1\\
        n = 4 &: p_4(x) = 0.005305x^4-0.171088x^2+1\\
        n = 6 &: p_6(x) = -0.000841x^6+0.033532x^4-0.351364x^2+1\\
        n = 8 &: p_8(x) = 0.000137x^8-0.006580x^6+0.098188x^4-0.528121x^2+1\\
    \end{aligned}
\end{equation*}
Runge phenomena is plotted below (图\ref{1}):

\begin{figure}[htb] 
    \center{\includegraphics[width=16cm]  {../src/B.png}} 
    \caption{\label{1} Runge phenomena} 
\end{figure}

\end{solution}

\subsection*{C}
\begin{solution}    
Polynomials by Chebyshev method is build below(图\ref{2}), the Runge phenomena decreases.\\
\begin{figure}[htb] 
    \center{\includegraphics[width=12cm]  {../src/C.png}} 
    \caption{\label{2} Chebyshev method} 
\end{figure}
\end{solution}

\subsection*{D}
\begin{solution}    
The distance-time plot and speed-time plot simulated below(图\ref{D1}、图\ref{D2}):\\
\begin{figure}[H]
    \centering
    \subfigure[distance-time plot]{
      \label{D1} 
      \includegraphics[scale=0.4]{../src/D-distance.png}}
    \hspace{0.5in} % 两图片之间的距离
    \subfigure[speed-time plot]{
      \label{D2} 
      \includegraphics[scale=0.4]{../src/D-speed.png}}
    \caption{\label{3} sport plot}
  \end{figure}
  So when t = 10 s : position = 743 , speed = 48. \\
  When t = 12, speed = 111 > 81. So exceed. We can also find it in the plot.
\end{solution}

\subsection*{E}
\begin{solution}    
The average weight curve is below : \\

\begin{figure}[H] 
    \center{\includegraphics[width=12cm]  {../src/E.png}} 
    \caption{\label{E} weight curve} 
\end{figure}

When t = 43, sp1 = 14640, sp2 = 2981. \\
It's wrong obviously.So it can't predict too far.By common sense, sp2 will die but sp1 not.
\end{solution}


\end{document} 